package controller;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.control.SplitPane;
import javafx.stage.Stage;

/**
 * 启动类
 */
public class Main extends Application {
    /**
     * JDBC驱动类的完全限定名
     */
    static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
    /**
     * Stage对象
     */
    static Stage primaryStage = null;
    /**
     * 挂号pane对象
     */
    private SplitPane regRoot = null;
    /**
     * 登录pane对象
     */
    private SplitPane loginRoot = null;
    /**
     * 医生pane对象
     */
    private SplitPane docRoot = null;
    /**
     * 挂号scene
     */
    private static Scene regScene = null;
    /**
     * 登录scene
     */
    private static Scene loginScene = null;
    /**
     * 医生scene
     */
    private static Scene docScene = null;
    /**
     * 当前登录的医生或病人的编号
     */
    static String accountNum;

    @Override
    public void start(Stage primaryStage) throws Exception{
        //设置fxml文件
        loginRoot = FXMLLoader.load(getClass().getResource("../fxml/login.fxml"));
        regRoot = FXMLLoader.load(getClass().getResource("../fxml/register.fxml"));
        docRoot = FXMLLoader.load(getClass().getResource("../fxml/doctor.fxml"));
        //设置标题
        primaryStage.setTitle("医院挂号系统");
        this.primaryStage = primaryStage;
        //创建scene
        regScene = new Scene(regRoot);
        loginScene = new Scene(loginRoot);
        docScene = new Scene(docRoot);
        //docScene = new Scene(docRoot);
        //切换到登录scene
        setLogin();
        primaryStage.show();
        //加载JDBC驱动
        Class.forName(JDBC_DRIVER);
    }

    /**
     * 启动程序
     * @param args
     */
    public static void main(String[] args) {
        launch(args);
    }

    /**
     * 设置stage
     * @param stage
     */
    public static void setPrimaryStage(Stage stage) {
        primaryStage = stage;
    }

    /**
     * 返回stage
     * @return
     */
    public static Stage getPrimaryStage() {
        return primaryStage;
    }

    /**
     * 切换为登录scene
     */
    public static void setLogin() {
        primaryStage.setScene(loginScene);
    }

    /**
     * 切换为挂号scene
     */
    public static void setRegister() {
        primaryStage.setScene(regScene);
    }

    /**
     * 切换为医生scene
     */
    public static void setDoctor() {
        primaryStage.setScene(docScene);
    }

}
